home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / gt_power / gttutors.zip / GTTUTOR4.TXT < prev    next >
Text File  |  1987-06-22  |  21KB  |  345 lines

  1. *****************************************************************
  2. Part four in a series of tutorials concerning communications  and 
  3. the  micro-computer  industry.   This  particular  tutorial   was 
  4. created during a call from Mr. Bruce  Aldrich  and deals with the 
  5. concepts of multi-tasking and the future of Local Area Networks.
  6. *****************************************************************
  7.  
  8.  
  9. A:   James,  a few questions regarding the future  of  PC  multi-
  10. tasking.
  11.  
  12. 1)  Are  you  familiar with a new software product  for  the  386 
  13. called PC-MOS (I believe)?  
  14.  
  15. 2)   Are  you familiar with DRI's Concurrent DOS (as  well  as  a 
  16. just-out update by a different name which currently escapes me)?  
  17.  
  18. Obviously,  I  am  interested in exploring  the  area  of  multi-
  19. tasking.
  20.  
  21. D: If you will permit me, I would like to digress  and  establish 
  22. some  fundamentals  before answering directly.  I  wish  to  talk 
  23. about what has happened in the micro-computer world, and why,  in 
  24. order to develop a reasonable insight into where it is going.
  25.  
  26. About  the time of the introduction of micro-computers  into  the 
  27. marketplace  the manufacturers had recognized a long  term  trend 
  28. that needed to be continued: about every four years the  industry 
  29. was  providing  three times the  prior  performance/capacity  for 
  30. price increases of only about double the prior cost - unit  costs 
  31. were  decreasing..  The trend had taken computers into the  early 
  32. seventies in three broad forms:
  33.  
  34. 1)  The  largest  form were (and still  are)  called  mainframes.  
  35. Entry  level  cost  was about a  million  dollars.   For  several 
  36. million  you  could get a mainframe that  could  support  several 
  37. thousand  simultaneous  users of that system.   It  cost  another 
  38. million or so per year to maintain that system (air conditioning, 
  39. raised  floor  and  other  capital  cost  amortizations,  systems 
  40. engineers, programmers, librarians, etc.).
  41.  
  42. 2)  For  an  order of magnitude  less  money,  about  one-hundred 
  43. thousand dollars, you could buy a relatively small mini-computer.  
  44. For  several  hundred  thousand dollars you  could  buy  a  mini-
  45. computer that could support several hundred simultaneous users on 
  46. that system.  It took about a hundred thousand dollars a year  to 
  47. support   the   initial   investment   (environment,    supplies, 
  48. programmers,  operators,  etc.).
  49.  
  50. 3)  Finally, an order of magnitude less was required to  purchase 
  51. a  micro-computer.   Unlike the other two kinds of  systems,  the 
  52. micro-computers  could not support multiple users.  On the  other 
  53. hand,  unlike  the  other kinds of computers,  it  did  not  take 
  54. thousands of dollars per year to maintain such a computer.  There 
  55. were   no  environmental  requirements.   There  were  no   major 
  56. programmer  or operator costs.  In fact, what you could  buy  for 
  57. about  $10,000  was a single user computer.   Thus,  they  became 
  58. known as personal computers.
  59.  
  60. Well,  that  all  may have been obvious, but  looking  under  the 
  61. covers,  so  to  speak,  it  is  interesting  to  note  that  the 
  62. manufacturers  of  these  micro-computers  did  not  expect   the 
  63. business  community to be interested in them.  Their real  intent 
  64. in  bringing  these  machines to market  was  to  get  sufficient 
  65. manufacturing experience that they could quickly get in front  of 
  66. the  efficiency  ramp  up curve and,  through  volume  sales,  to 
  67. generate  economies of manufacturing scale such that  they  could 
  68. manufacture yet another generation of computers below the  micro-
  69. computer level and to do so not for one order of magnitude  price 
  70. decrease,  but two!  They wanted to be able to produce  and  sell 
  71. micro-computers  (chips,  actually) that would be priced  not  at 
  72. $1,000  each, but at something closer to $100.  The layman  seems 
  73. not to  appreciate the fact that they were completely  successful 
  74. in their efforts.  You cannot buy a $30,000 automobile today that 
  75. does not have at least one $25 computer in it.
  76.  
  77. To  get  the volume of sales high,  the  manufactures  introduced 
  78. those computers as game players for home use.  That generated the 
  79. initial  bad  name  for  micros and  the  initial  resistance  by 
  80. business to use them.  Who would risk part of his business career 
  81. on a decision to use game players for serious work?
  82.  
  83. An  interesting thing happened soon after  these  micro-computers 
  84. began to sell in volume; they were found to be MORE reliable than 
  85. their larger cousins - of course, they had much less  complicated 
  86. circuitry,  many  fewer  components,  and  required  low   power.  
  87. Further, and this is the MOST IMPORTANT DEVELOPMENT OF ALL, there 
  88. emerged  an  INDUSTRY  STANDARD  called  the  S-100  bus.    This 
  89. permitted  many different manufacturers to enter the  marketplace 
  90. with  new peripherals, clones, and most important, with  software 
  91. that ran on almost all of these early 8-bit machines.
  92.  
  93. As  clever engineers recognized that these machines were able  to 
  94. perform several hundred thousand machine instructions per  second 
  95. and the vast majority of that capability was not being used, they 
  96. looked for ways to do so.  Let me explain that a little more.  In 
  97. these  early  machines  the typical  computer  program  (game  or 
  98. wordprocessor) was doing something like this:  I need a character 
  99. from  the keyboard, I'll see if one has been typed.  No,  nothing 
  100. yet.  Well, I need a character from the keyboard, I'll see if one 
  101. has  been  typed.   No, ..."  In other  words,  though  it  could 
  102. perform  several hundred thousand instructions per second it  was 
  103. almost always crawling along at the speed of the human operator's 
  104. typing skill - SLOW!
  105.  
  106. The  engineers  built  clever new  programs  that  would  control 
  107. several different programs at the same time in memory.  Of course 
  108. these  were only able to run one at a time, but whenever  one  of 
  109. those  programs needed to read a character from the keyboard  and 
  110. find  that none had yet been typed, or need to print a  character 
  111. to  the screen or a printer only to find that the  output  device 
  112. was  not yet ready to print it, the program would be  temporarily 
  113. stopped  and the system made to go to the next program in  memory 
  114. to  see  if it was capable of doing some work.  This  process  of 
  115. appearing to run more than one program at a time is called multi-
  116. tasking.  In human terms it was extremely fast.  The result,  the 
  117. computers  were performing much more work than they had prior  to 
  118. multi-tasking.
  119.  
  120. But  there  were some real limits to this approach.   After  all, 
  121. there was only one central processing unit (CPU) and at most  you 
  122. could  have  only  64K of memory that had to  be  shared  by  the 
  123. programs.
  124.  
  125. Remember  I just mentioned that there was an  important  industry 
  126. standard that emerged from the mass sale of micros called the  S-
  127. 100  bus?   Well this was the enabling event that made  the  next 
  128. method of increasing the performance of these small machines.  S-
  129. 100  bus cards were introduced that contained on the single  card 
  130. both a separate CPU and 64K of memory that was dedicated to  that 
  131. CPU.   These  cards  became known as  'slave  systems'  and  were 
  132. plugged  into the same S-100 bus as the original CPU and  memory.  
  133. (A  'bus'  is merely a set of parallel wires with  connectors  on 
  134. them that allow every card plugged into them to have exactly  the 
  135. same data available to each of its pins as do all the other cards 
  136. connected to those lines.)  The original CPU became known as  the 
  137. 'master system' or 'server' and became responsible for allocating 
  138. work  out to each of the other CPUs on the bus (that is why  they 
  139. were called 'slaves').  In this way a great deal more performance 
  140. was  made available from that micro than previously.  I must  add 
  141. that it also meant that a special and more complicated  Operating 
  142. System was required as well.
  143.  
  144. What  I  just described was the beginning of  what  the  industry 
  145. called  'tightly  coupled'  systems.  These  systems  had  common 
  146. access  to all the system memory and all the  peripheral  devices 
  147. attached  to  the  system.  Further, they  also  had  a  terminal 
  148. attached   to  each  of  the  slave  CPUs  and,   thus,   several 
  149. simultaneous users of the system was now a reality.  Recall, only 
  150. a  few years earlier it would have cost several hundred  thousand 
  151. dollars  worth  of  computer in order to support  more  than  one 
  152. simultaneous  user of a computer.  This was a  breakthrough  that 
  153. brought serious attention from the business community.
  154.  
  155. Looking more closely at those configurations, what was  happening 
  156. was  that  all  of the expensive devices  that  once  were  being 
  157. dedicated to only a single user were now being shared.   Printers 
  158. and  disks are the most obvious examples.  Along with sharing  of 
  159. devices came the obvious problems of controlling shared  devices.  
  160. It  would  not  do at all if two of the  users  wanted  to  print 
  161. reports at the same time and having, say, only one printer, being 
  162. allowed  to do that.  Thus was born buffers and  sequencers  that 
  163. made the user think he was printing but which in reality were re-
  164. directing  output  destined to a printer and putting it  on  disk 
  165. someplace  to await a time when the printer was no  longer  being 
  166. used  by  another  user.  These were called  'spoolers'  and  the 
  167. concept is fundamental to the successful sharing of printers even 
  168. in  the  mainframes today.  Disk sharing brought with it  a  more 
  169. subtle  form  of problem; the possibility that  two  users  might 
  170. inadvertently corrupt the information required by each other.
  171.  
  172. For  example, assume that there is a client file on a disk  drive 
  173. that contains only one record in it and that that record contains 
  174. the current balance due by that client to the firm.  Suppose that 
  175. an accounts payable clerk is operating one terminal and wants  to 
  176. post a $1,000 payment received just as a sales entry clerk  tries 
  177. to  post  a new credit purchase of $500.   Finally,   assume  the 
  178. record  starts  with a balance due of $2,000.  If both  of  these 
  179. clerks happen to read the current balance due at almost the  same 
  180. time  they would put into their memory the record that says  that 
  181. they  are starting with a balance due of $2,000.  Let's say  that 
  182. the  sales  entry clerk posts the new purchase of  $500  to  that 
  183. record and saves the resulting $2,500 record back onto the  disk.  
  184. Then  the accounts receivable clerk posts the check  received  of 
  185. $1,000  to  her  copy of the current balance  (which  still  says 
  186. $2,000)  and then saves the resulting new balance due  of  $1,000 
  187. back  to  the disk (right on top of the old  one).   The  obvious 
  188. result is that the record of the new sales has been lost for when 
  189. either  of these clerks next reads the disk record it  will  show 
  190. $1,000  rather than $1,500 as it should.  This insidious  problem 
  191. is  solved  with the implementation of what is  called  file  and 
  192. record interlocks.  With these functioning properly no more  than 
  193. one person may ever have the ability to modify a disk record at a 
  194. time.  Unfortunately, even today, most software does not consider 
  195. that  this  might be a problem and does NOT use file  and  record 
  196. interlocks!
  197.  
  198. Along  came the 16 bit machines now generically called  the  PC's 
  199. (because IBM called their machines the Personal Computers  rather 
  200. than  game  players - good move!).  Besides  being  faster  CPUs, 
  201. these  machines broke through the 64K maximum memory barrier  and 
  202. thus  had much more satisfactory performance available  for  both 
  203. multi-tasking as well as multi-use of the computers.  Though they 
  204. were  much better equipped to handle these  performance  oriented 
  205. uses  of the computer, the software did not support it!   Indeed, 
  206. the user community was set back almost four years as a result  of 
  207. the  failure  of the hardware industry to work closely  with  the 
  208. software  industry  in order to meet the needs  of  their  users.  
  209. Many  believe it was a conscious effort designed to sell as  much 
  210. 'iron' as they could before the prices of that equipment fell due 
  211. to competition.  Remember, in a single user environment there are 
  212. no shared devices.  Every user that wanted to print something had 
  213. to buy a printer.
  214.  
  215. For  several  years after the introduction of the 16  bit  micro-
  216. computers the manufacturers of the 'old' 8-bit machines continued 
  217. to  advance  their  capabilities.  As I  mentioned  earlier,  the 
  218. ability  to  support  multiple users at the same  time  had  been 
  219. introduced  BEFORE  the  16-bit  machines  were  even  announced.  
  220. Development  continued  in  a new  direction,  however.   It  was 
  221. already seen that they had reached certain limits in terms of how 
  222. many  cards  could  be plugged into the same  S-100  bus  and  be 
  223. expected  not  to  dramatically impact the  performance  of  that 
  224. single bus due to conflicts and simultaneous demands of it.   The 
  225. new  approach  was  called 'loosely coupled'  systems.   In  this 
  226. method  of  sharing  of  resources  (notably  printers  and  disk 
  227. devices) complete computers were tied together via coax cable and 
  228. elegant software.  Messages were routed from one computer to  the 
  229. next over those cables.  Sometimes they were arranged in loops or 
  230. rings,  without  'ends'.   Sometimes they were  arranged  with  a 
  231. central  computer  in the center and the remotes at the  ends  of 
  232. cables as 'stars or 'spokes'.  Whatever the configuration of  the 
  233. cabling,  the  result  was that a user of any  of  the  computers 
  234. connected  to the cable could send print jobs to shared  printers 
  235. (spooling as necessary) and read or write files from disk  drives 
  236. that  were  located on other computers (typically the  master  or 
  237. server).  And as you might expect, before long there evolved  the 
  238. ability  to connect one such NETWORK of computers to another  one 
  239. that  was  located either near by or sometimes  several  thousand 
  240. miles  away  via telephone connections  (these  connections  were 
  241. called 'gateways').
  242.  
  243. And  what were the bigger 16-bit computer manufactures doing  all 
  244. this  while?  They were selling a lot of  micro-computers  (based 
  245. largely  on  their  names (IBM, DEC,  WANG)).   Finally,  several 
  246. companies  that  had  pioneered  the  development  of  multi-user 
  247. capabilities   in  the  8-bit  machines  and  network   component 
  248. manufactures upgraded to the 16-bit machines.  3COM, Novell,  and 
  249. several  others announced NETWORK capability for the PC's (as  if 
  250. it  was the best thing since night baseball and  something  new).  
  251. It  was not met with great enthusiasm by the business  community.  
  252. Primarily since IBM and the other computer manufacturers had been 
  253. so successful in convincing these buyers that a machine on  every 
  254. desk  was  the wave of the future and because they did  not  have 
  255. their  own networking capability at the time, it  was  pronounced 
  256. 'premature'   to   leap  into   a   potentially   'non-standard', 
  257. potentially  'dead-ended' approach such as were being offered  by 
  258. these  network  manufacturers.   IBM  soon  announced  their  own 
  259. network  architecture which was the worst of the bunch and a  few 
  260. years  later they admitted that there was a better way and  'pre-
  261. announced' exactly how businesses should wire their buildings  to 
  262. prepare  for their new network architecture.  It turns  out  that 
  263. that architecture changed after IBM's more loyal clients had done 
  264. as IBM recommended, but that is another story all together.
  265.  
  266. The message I am trying to get to is that it is still  pre-mature 
  267. to  bet  on  a  specific  network  architecture  (loosely  couple 
  268. systems).   Further,  tightly coupled systems have  been  TOTALLY 
  269. ignored by IBM as they are simply too efficient and do not result 
  270. in  other  than incremental hardware sales.   Finally,  with  the 
  271. introduction of Intel's 80286 CPU the 16-bit micro-computers were 
  272. able to very efficiently operate in multi-tasking mode  (remember 
  273. how it all started with the 8-bit machines).
  274.  
  275. IBM did not make software available to run multi-tasking on their 
  276. machines that was compatible with the existing software (PC-DOS).  
  277. Instead,  they 'introduced' UNIX as the software  that  permitted 
  278. multi-tasking  of  their machines.  Indeed,  there  were  several 
  279. 'flavors' of this massive and highly inefficient Operating System 
  280. that soon became available (ZENIX is a UNIX derivative or clone).  
  281. In  other words, the industry as led by IBM began to  forget  the 
  282. value  of  standards  and  started  pushing  software  that   was 
  283. incompatible   and   which  not-coincidentally   required   major 
  284. increases  to  the amount of memory and disk space  available  to 
  285. then  in  order  to operate.  That strategy  has  not  been  well 
  286. received  and  PC-DOS and MS-DOS are still by  far  the  dominant 
  287. Operating Systems on the PC/XT/AT micro-computers.  Multi-tasking 
  288. needs are usually supported via off-brand software houses such as 
  289. DoubleDos,  DESQview, and Multi-Link.  IBM introduced,  late  and 
  290. poorly  done,  and inefficient as usual,  a  multi-tasker  called 
  291. TopView, described by IBM as an emerging standard, but in reality 
  292. a  failure  in  the marketplace.  Other  multi-taskers  are  also 
  293. available today such as Windows.
  294.  
  295. And  then  came the super micros which use the Intel  80386  CPU.  
  296. This machine can often run as much as 17 times faster than  IBM's 
  297. original PC and can support a dozen megabytes of memory and more.  
  298. It is clearly the mainframe in miniature dreamed about only a few 
  299. years  ago.  And still there is no standard available for  multi-
  300. tasking, for tightly coupled or loosely coupled multi-user needs, 
  301. and  one  full generation of CPU (the 286) has  had  capabilities 
  302. that are important (virtual memory and protected software shells) 
  303. that  may  never be supported with software.  That  is,  the  286 
  304. family of machines exist almost exclusively as faster PC's and so 
  305. too do the 386's installed.
  306.  
  307. Why?  Well perhaps the fact that IBM announced the PS/2 (Personal 
  308. System/2)  family  of micro-computers has something  to  do  with 
  309. that.   Perhaps in their zeal to force proprietary 3 1/2"  floppy 
  310. disks  onto the public in order to force the  clone  manufactures 
  311. out of business they failed to consider the needs of the existing 
  312. computer owners.  Perhaps IBM has all the answers and is about to 
  313. bring them to the market after all.
  314.  
  315. Which  reminds me of the story of the most unfortunate woman  who 
  316. had  been married three times and still claimed to be  a  virgin.  
  317. Asked how that was possible she answered that the first time  she 
  318. married  she  was young and so was her husband.  On  the  wedding 
  319. night  they  had partied a bit too much and after  a  tragic  car 
  320. accident  she  was  left widowed and the marriage  had  not  been 
  321. consummated.  The second time she married it was her decision  to 
  322. play  it  safe.   She married an older man  who  was  financially 
  323. secure  and stable - didn't even drink.  Unfortunately he  was  a 
  324. bit too old and on their wedding night he died of a heart  attack 
  325. just  after  she had removed her clothes - widowed for  a  second 
  326. time  without consummating the relationship.  The third time  she 
  327. married  an IBM salesman.  He was in his mid  twenties,  healthy, 
  328. good  looking, and apparently eager.  They had been  married  for 
  329. six months before she filed for divorce as the marriage  remained  
  330. unconsummated.   Asked why she said that every night it would  be 
  331. the  same old thing; he would get into bed and tell her how  good 
  332. it was going to be.
  333.  
  334. Yes,  Bruce, I have heard of the products you mentioned.   In  my 
  335. opinion  you should be more interested in the  established  Local 
  336. Area Networks than in these products to satisfy the longer  range 
  337. needs  of  your  client.  3COM Plus or  Novell  are  the  leading 
  338. contenders  and  they  both  have  highly  reliable  and   highly 
  339. efficient  LAN capabilities.  Multi-tasking is supported only  on 
  340. the  server  and is reserved for the support of the  slaves,  not 
  341. end-user  work.  Tightly coupled systems are more cost  effective 
  342. than  LAN but suffer from a lack of standards and finite  (small) 
  343. number of simultaneous users.  Wish I could be more helpful.
  344.  
  345.